package com.indusfo.spc.mapper;

import com.indusfo.spc.pojo.Rule;
import com.indusfo.spc.pojo.RuleWatercode;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface RuleMapper{
    List<Rule> queryRule(Rule rule);

    Integer countRule(Rule rule);

    Integer insertRule(Rule rule);

    int updateRule(Rule rule);

    int deleteRule(@Param("ruleIds") Integer[] ruleIds,@Param("dataState")  Integer dataState);

    Integer checkRule(Rule rule);

 
	Integer queryRuleIdByOrderId(@Param("orderId")Integer orderId);

    Integer queryMatIdByOrderId(@Param("orderId")Integer orderId);

    Integer queryRuleIdByMatId(@Param("matId")Integer matId);

    String queryMatCodeByMatId(@Param("matId")Integer matId);

    String queryOrderNoByOrderId(@Param("orderId")Integer orderId);

	String queryMatModelByMatId(@Param("matId")Integer matId);

    String queryWorkShopCodeByOrderId(@Param("orderId")Integer orderId);

    String queryProductlineCodeByOrderId(@Param("orderId")Integer orderId);

    /**
     * 判断物料是否使用条码规则
     * @param ruleIds
     * @return
     */
    int selectMat(@Param("ruleIds")Integer[] ruleIds);

    // 判重 条码规则名称
    Integer checkRuleName(Rule rule);


//    /**
//     * 编码查重
//     * @param ruleId
//     * @param ruleCode
//     * @return
//     */
//    public Rule getByRuleCode(@Param("ruleId") Integer ruleId, @Param("ruleCode") String ruleCode);
//
//
//    /**
//     * 根据id查詢
//     * @param ruleId
//     * @return
//     */
//    public List<Rule> getRule(@Param("ruleId") Integer ruleId);
//
//    /**
//     * 查询全部集合
//     * @param rule
//     * @return
//     */
//    public List<Rule> listRule(Rule rule);
//
//    /**
//     * 分页总数
//     * @param rule
//     * @return
//     */
//    int countRule(Rule rule);
//
//    /**
//     * 删除
//     *
//     */
//    int delRule(@Param("ids") Integer[] ids, @Param("dataState") Integer dataState);
//
//    /**
//     * 名称查重
//     * @param ruleId
//     * @param ruleName
//     * @return
//     */
//    Rule getByRuleName(@Param("ruleId") Integer ruleId, @Param("ruleName") String ruleName);
//
//    int insertSelective(Rule rule);
//
//    int updateByPrimaryKeySelective(Rule rule);
}
